package com.alibaba.dingtalk.openapi.helper;

/**
 * 用于钉钉数据分页
 * @author kaka
 *
 */
public class DingTalkPageHelper {
	
	public static final Integer PAGE_SIZE		= 50;

	/**
	 * 支持分页查询，与offset参数同时设置时才生效，此参数代表分页大小，最大100
	 */
	private Integer size			= PAGE_SIZE;

	/**
	 * 支持分页查询，与size参数同时设置时才生效，此参数代表偏移量
	 */
	private Integer offset;

	/**
	 * 在分页查询时返回，代表是否还有下一页更多数据
	 */
	private Boolean hasMore			= true;
	
	/**
	 * 初始化分页工具
	 * 构建一个<code>DingTalkPageHelper.java</code>
	 * @param currentOffset 当前偏移量
	 */
	public DingTalkPageHelper(Integer currentOffset) {
		this.offset = currentOffset;
	}
	
	/**
	 * 初始化分页工具
	 * 构建一个<code>DingTalkPageHelper.java</code>
	 * @param currentOffset 当前偏移量
	 * @param size 每页记录条数
	 */
	public DingTalkPageHelper(Integer currentOffset, Integer size) {
		this.offset = currentOffset;
		this.size = size;
	}

	public Integer getSize() {
		return size;
	}

	public void setSize(Integer size) {
		this.size = size;
	}

	public Integer getOffset() {
		return offset;
	}

	public void setOffset(Integer offset) {
		this.offset = offset;
	}

	public Boolean getHasMore() {
		return hasMore;
	}

	public void setHasMore(Boolean hasMore) {
		this.hasMore = hasMore;
		if(hasMore) {
			this.offset = this.offset + size;
		}
	}
	
	
																			
}
